#include <0832.h>
sbit CS=P1^4;
sbit CLK=P1^5;
sbit DIO=P1^6;

uchar Read0832()
{
	uchar i,dat1=0,dat2=0;

	CS=0;
	CLK=0;

	DIO=1;
	_nop_();
	_nop_();
	CLK=1;
	_nop_();
	_nop_();

	CLK=0;
	DIO=1;
	_nop_();
	_nop_();
	CLK=1;
	_nop_();
	_nop_();

	CLK=0;
	DIO=0;
	_nop_();
	_nop_();
	CLK=1;
	_nop_();
	_nop_();

	CLK=0;
	DIO=1;
	_nop_();
	_nop_();

	for (i=0;i<8;i++)
	{
		CLK=1;
		_nop_();
		_nop_();
		CLK=0;
		_nop_();
		_nop_();
		dat1=(dat1<<1)|DIO;
	}

	for (i=0;i<8;i++)
	{
		dat2=dat2|((uchar)DIO<<i);
		CLK=1;
		_nop_();
		_nop_();
		CLK=0;
		_nop_();
		_nop_();
	}
	CS=1;
	return (dat1==dat2)?dat1:0x00;
}